package com.tang.java8.FunctionalInterface;

import java.util.function.Predicate;

/**
 * @author tlm
 * @version 1.0
 * @date 2020/3/14 18:27
 * 断定型接口
 */
public class PredicateTest {
    public static void main(String[] args) {
        //  Predicate 断定型接口：有一个输入参数，返回值只能是 布尔值！
        //  1.普通用法
        Predicate<String> predicate = new Predicate<String>() {
            @Override
            public boolean test(String s) {
                return s.isEmpty();
            }
        };
        System.out.println(predicate.test("abc"));

        //  2.Lambda表达式简化
        //  Predicate<String> predicate1 = s -> s.isEmpty();
        //  用双冒号可进一步简化：
        Predicate<String> predicate1 = String::isEmpty;
        System.out.println(predicate1.test(""));
    }
}
